// 导入express 框架
const express = require('express')
const multer = require('multer');
const bodyParser = require('body-parser')
// 导入已封装的数据函数
const db = require('./config/db.js')
// 引入jwt token工具
const JwtUtil = require('./utils/jwt');
// 解决跨域模块
const cors = require('cors');
// 创建App应用程序
const app = express()
//解析json编码数据
app.use(bodyParser.json());
//解析url编码的数据
app.use(bodyParser.urlencoded({extended: false}));
// 跨域访问
// 跨域资源共享 (Cross-origin resource sharing)
app.use(cors({
  exposeHeaders:['Authorization']
}));

// 测试
app.get('/',function(req,res){
    res.send(`
      <h1>测试成功！</h1>
    `)
})

// 导入管理员路由
const adminRouter = require('./router/admin/index.js');
app.use('/admin',adminRouter);

// 导入用户路由
const userRouter = require('./router/user/index.js');
app.use('/user',userRouter);

// 导入upload路由
const uploadRouter = require('./router/upload/index.js');
app.use('/upload',uploadRouter);

// 导入公共路由
const commonRouter = require('./router/common/index.js');
app.use('/common',commonRouter);

// 导入服务管理路由
const serviceRouter = require('./router/service/index.js');
app.use('/service',serviceRouter);

// 导入咨讯管理路由
const InquiriesRouter = require('./router/Inquiries/index.js');
app.use('/inquiries',InquiriesRouter);

// 判断登录有效期
app.post('/logged', function (req, res) {
  // 请求需要进行token校验 
  let token = req.body.token
  let jwt = new JwtUtil(token)
  let result = jwt.verifyToken()
  // 接收前端的参数
  if (result == 'err') {
    res.send({
      code: -1,
      msg: '登录已过期,请重新登录'
    })
  } else {
    res.send({
      code: 200,
      msg: 'online'
    })
  }
})
// app.all('*',function(req,res,next){  
//   let origin=req.headers.origin;
//     res.setHeader('Access-Control-Allow-Origin',"*");
//     res.setHeader('Access-Control-Allow-Headers','Content-Type');
//      next();
//  })

// 设置静态资源存放的路径
// http://localhost:3005/public/1.txt
app.use('/public/',express.static('./public/'));

// 监听服务的端口
app.listen(3005, ()=> {
    console.log(`服务启动了，访问 http:127.0.0.1:3005`)
    console.log(`服务启动了，访问 http:localhost:3005`)
})